avalanche-proto 0.16.1

Protobuf generated client and server resources for Avalanche gRPC in rust
Documentation

Crates.io

https://crates.io/crates/avalanche-proto

avalanche-proto

Protobuf generated client and server resources for Avalanche gRPC in rust. The generated stubs use the upstream avalanchego/proto definitions as the source of truth and versioning will align with avalanchego releases.

Versions

Support for avalanchego protocol version 15+.

The release version will align with the protocol version for avalanchego. In our example linked above avalanchego is currently on protocol version 16. This aligns with the minor version of the avalanche-proto release. Patches to minor releases could include improvements or bug fixes.

avalanche-proto = { version = "0.16", features = [] } // supports avalanchego protocol version 16

Usage

use avalanche_proto::{
    http::{
        http_server::Http,
        HttpRequest, HandleSimpleHttpResponse, HandleSimpleHttpRequest
    },
    google::protobuf::Empty,
};
use avalanche_proto::grpcutil;

grpcutil::default_server()
    .add_service(VmServer::new(vm))
    .serve_with_incoming(TcpListenerStream::new(listener))
    .await
    .map_err(|e| {
        Error::new(
            ErrorKind::Other,
            format!("failed to serve vm service: {}", e),
        )
    })